const { defineConfig } = require('@vue/cli-service')
const path = require('path')

module.exports = defineConfig({
	transpileDependencies: true,

	pluginOptions: {
		'style-resources-loader': {
			preProcessor: 'less',
			/*
    	   哪些文件自动导入 使用绝对路径
			   使用 path.join 来拼接完整路径
      */
			patterns: [
				path.join(__dirname, './src/assets/styles/variables.less'),
				path.join(__dirname, './src/assets/styles/mixins.less'),
			],
		},
	},
	// 修改页面 title
	chainWebpack: config => {
		// 限制图片10000b以下转换成base64，减少http请求    实践证明  已自动集成 好 10KB
		/* 	config.module
			.rule('images') //images是vue默认的名字，和文件夹名字无关
			.use('url-loader')
			.loader('url-loader')
			.tap(options => Object.assign(options, { limit: 10000 })) */
		// 修改页面 title
		config.plugin('html').tap(args => {
			args[0].title = '小兔鲜-新鲜、亲民、快捷'
			return args
		})
	},
	// 跳过检查host--这个是给webpack-dev-server开启可IP和域名访问权限-->QQ登陆
	devServer: { historyApiFallback: true, allowedHosts: 'all' },

	// 修改页面 title
	/* 	pages: {
		index: {
			entry: './src/main.js',
			title: '小兔鲜-新鲜、亲民、快捷',
		},
	}, */
	// 这个是设置外部扩展，模块为qc 变量名为QC，导入qc webpack 不做打包。
	// 使用时  依旧 需要 导入 cdn 或者 js  然后 import XX  from ''
	// 简化  vuex vueRouter  同理
	configureWebpack: {
		externals: {
			qc: 'QC',
		},
	},
	// dist index 白屏
	publicPath: './',
})
